<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=9"/>
<meta name="generator" content="Doxygen 1.8.14"/>
<meta name="viewport" content="width=device-width, initial-scale=1"/>
<title>SPHinXsys: SPHINXsys/src/shared/particle_dynamics/solid_dynamics/solid_dynamics.h File Reference</title>
<link href="tabs.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="jquery.js"></script>
<script type="text/javascript" src="dynsections.js"></script>
<link href="search/search.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="search/searchdata.js"></script>
<script type="text/javascript" src="search/search.js"></script>
<link href="doxygen.css" rel="stylesheet" type="text/css" />
</head>
<body>
<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
<div id="titlearea">
<table cellspacing="0" cellpadding="0">
 <tbody>
 <tr style="height: 56px;">
  <td id="projectlogo"><img alt="Logo" src="logo.png"/></td>
  <td id="projectalign" style="padding-left: 0.5em;">
   <div id="projectname">SPHinXsys
   &#160;<span id="projectnumber">alpha version</span>
   </div>
  </td>
 </tr>
 </tbody>
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.8.14 -->
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
var searchBox = new SearchBox("searchBox", "search",false,'Search');
/* @license-end */
</script>
<script type="text/javascript" src="menudata.js"></script>
<script type="text/javascript" src="menu.js"></script>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
$(function() {
  initMenu('',true,false,'search.php','Search');
  $(document).ready(function() { init_search(); });
});
/* @license-end */</script>
<div id="main-nav"></div>
<!-- window showing the filter options -->
<div id="MSearchSelectWindow"
     onmouseover="return searchBox.OnSearchSelectShow()"
     onmouseout="return searchBox.OnSearchSelectHide()"
     onkeydown="return searchBox.OnSearchSelectKey(event)">
</div>

<!-- iframe showing the search results (closed by default) -->
<div id="MSearchResultsWindow">
<iframe src="javascript:void(0)" frameborder="0" 
        name="MSearchResults" id="MSearchResults">
</iframe>
</div>

<div id="nav-path" class="navpath">
  <ul>
<li class="navelem"><a class="el" href="dir_3dc1dabd28ba78e072d14d3fcfc90454.html">SPHINXsys</a></li><li class="navelem"><a class="el" href="dir_48ea983704c43b6d88c1fa3f4d09e369.html">src</a></li><li class="navelem"><a class="el" href="dir_0a0d9ef1793521534f0094f317758287.html">shared</a></li><li class="navelem"><a class="el" href="dir_05f659066ce4fa1dc9c19bd298f55a53.html">particle_dynamics</a></li><li class="navelem"><a class="el" href="dir_7195eba4309c1334c83090581898beba.html">solid_dynamics</a></li>  </ul>
</div>
</div><!-- top -->
<div class="header">
  <div class="summary">
<a href="#nested-classes">Classes</a> &#124;
<a href="#namespaces">Namespaces</a> &#124;
<a href="#typedef-members">Typedefs</a>  </div>
  <div class="headertitle">
<div class="title">solid_dynamics.h File Reference</div>  </div>
</div><!--header-->
<div class="contents">

<p>Here, we define the algorithm classes for solid dynamics.  
<a href="#details">More...</a></p>
<div class="textblock"><code>#include &quot;all_particle_dynamics.h&quot;</code><br />
<code>#include &quot;<a class="el" href="elastic__solid_8h_source.html">elastic_solid.h</a>&quot;</code><br />
<code>#include &quot;<a class="el" href="weakly__compressible__fluid_8h_source.html">weakly_compressible_fluid.h</a>&quot;</code><br />
<code>#include &quot;<a class="el" href="base__kernel_8h_source.html">base_kernel.h</a>&quot;</code><br />
</div>
<p><a href="solid__dynamics_8h_source.html">Go to the source code of this file.</a></p>
<table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="nested-classes"></a>
Classes</h2></td></tr>
<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_s_p_h_1_1solid__dynamics_1_1_solid_dynamics_initial_condition.html">SPH::solid_dynamics::SolidDynamicsInitialCondition</a></td></tr>
<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">set initial condition for solid fluid body This is a abstract class to be override for case specific initial conditions.  <a href="class_s_p_h_1_1solid__dynamics_1_1_solid_dynamics_initial_condition.html#details">More...</a><br /></td></tr>
<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_s_p_h_1_1solid__dynamics_1_1_normal_direction_summation.html">SPH::solid_dynamics::NormalDirectionSummation</a></td></tr>
<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Computing surface normal direction of a body the value are valid for all particles but only near the surface particle will used note that the normal is normalized.  <a href="class_s_p_h_1_1solid__dynamics_1_1_normal_direction_summation.html#details">More...</a><br /></td></tr>
<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_s_p_h_1_1solid__dynamics_1_1_normal_direction_re_normalization.html">SPH::solid_dynamics::NormalDirectionReNormalization</a></td></tr>
<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Computing surface normal direction of a body using a second order algorithm.  <a href="class_s_p_h_1_1solid__dynamics_1_1_normal_direction_re_normalization.html#details">More...</a><br /></td></tr>
<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_s_p_h_1_1solid__dynamics_1_1_elastic_solid_dynamics_initial_condition.html">SPH::solid_dynamics::ElasticSolidDynamicsInitialCondition</a></td></tr>
<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">set initial condition for a solid body with different material This is a abstract class to be override for case specific initial conditions.  <a href="class_s_p_h_1_1solid__dynamics_1_1_elastic_solid_dynamics_initial_condition.html#details">More...</a><br /></td></tr>
<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_s_p_h_1_1solid__dynamics_1_1_update_elastic_normal_direction.html">SPH::solid_dynamics::UpdateElasticNormalDirection</a></td></tr>
<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">update particle normal directions for elastic solid  <a href="class_s_p_h_1_1solid__dynamics_1_1_update_elastic_normal_direction.html#details">More...</a><br /></td></tr>
<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_s_p_h_1_1solid__dynamics_1_1_initialize_displacement.html">SPH::solid_dynamics::InitializeDisplacement</a></td></tr>
<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">initialize the displacement for computing average velocity. This class is for FSI applications to achieve smaller solid dynamics time step size compared to the fluid dynamics  <a href="class_s_p_h_1_1solid__dynamics_1_1_initialize_displacement.html#details">More...</a><br /></td></tr>
<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_s_p_h_1_1solid__dynamics_1_1_update_average_velocity.html">SPH::solid_dynamics::UpdateAverageVelocity</a></td></tr>
<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Computing average velocity. This class is for FSI applications to achieve smaller solid dynamics time step size compared to the fluid dynamics.  <a href="class_s_p_h_1_1solid__dynamics_1_1_update_average_velocity.html#details">More...</a><br /></td></tr>
<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_s_p_h_1_1solid__dynamics_1_1_fluid_viscous_force_on_solid.html">SPH::solid_dynamics::FluidViscousForceOnSolid</a></td></tr>
<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Computing the viscous force from the fluid.  <a href="class_s_p_h_1_1solid__dynamics_1_1_fluid_viscous_force_on_solid.html#details">More...</a><br /></td></tr>
<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_s_p_h_1_1solid__dynamics_1_1_fluid_angular_conservative_viscous_force_on_solid.html">SPH::solid_dynamics::FluidAngularConservativeViscousForceOnSolid</a></td></tr>
<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Computing the viscous force from the fluid.  <a href="class_s_p_h_1_1solid__dynamics_1_1_fluid_angular_conservative_viscous_force_on_solid.html#details">More...</a><br /></td></tr>
<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_s_p_h_1_1solid__dynamics_1_1_fluid_pressure_force_on_solid.html">SPH::solid_dynamics::FluidPressureForceOnSolid</a></td></tr>
<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Computing the pressure force from the fluid. The pressrue force is added on the viscous force of the latter is computed. This class is for FSI applications to achieve smaller solid dynamics time step size compared to the fluid dynamics.  <a href="class_s_p_h_1_1solid__dynamics_1_1_fluid_pressure_force_on_solid.html#details">More...</a><br /></td></tr>
<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_s_p_h_1_1solid__dynamics_1_1_total_viscous_force_on_solid.html">SPH::solid_dynamics::TotalViscousForceOnSolid</a></td></tr>
<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Computing the total viscous force from fluid.  <a href="class_s_p_h_1_1solid__dynamics_1_1_total_viscous_force_on_solid.html#details">More...</a><br /></td></tr>
<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_s_p_h_1_1solid__dynamics_1_1_total_force_on_solid.html">SPH::solid_dynamics::TotalForceOnSolid</a></td></tr>
<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Computing total force from fluid.  <a href="class_s_p_h_1_1solid__dynamics_1_1_total_force_on_solid.html#details">More...</a><br /></td></tr>
<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_s_p_h_1_1solid__dynamics_1_1_get_acoustic_time_step_size.html">SPH::solid_dynamics::GetAcousticTimeStepSize</a></td></tr>
<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Computing the acoustic time step size computing time step size.  <a href="class_s_p_h_1_1solid__dynamics_1_1_get_acoustic_time_step_size.html#details">More...</a><br /></td></tr>
<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_s_p_h_1_1solid__dynamics_1_1_correct_configuration.html">SPH::solid_dynamics::CorrectConfiguration</a></td></tr>
<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">obtain the corrected initial configuration in strong form  <a href="class_s_p_h_1_1solid__dynamics_1_1_correct_configuration.html#details">More...</a><br /></td></tr>
<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_s_p_h_1_1solid__dynamics_1_1_deformation_gradient_tensor_by_summation.html">SPH::solid_dynamics::DeformationGradientTensorBySummation</a></td></tr>
<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">computing deformation gradient tensor by summation  <a href="class_s_p_h_1_1solid__dynamics_1_1_deformation_gradient_tensor_by_summation.html#details">More...</a><br /></td></tr>
<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_s_p_h_1_1solid__dynamics_1_1_stress_relaxation_first_half.html">SPH::solid_dynamics::StressRelaxationFirstHalf</a></td></tr>
<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">computing stress relaxation process by verlet time stepping This is the first step  <a href="class_s_p_h_1_1solid__dynamics_1_1_stress_relaxation_first_half.html#details">More...</a><br /></td></tr>
<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_s_p_h_1_1solid__dynamics_1_1_stress_relaxation_second_half.html">SPH::solid_dynamics::StressRelaxationSecondHalf</a></td></tr>
<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">computing stress relaxation process by verlet time stepping This is the second step  <a href="class_s_p_h_1_1solid__dynamics_1_1_stress_relaxation_second_half.html#details">More...</a><br /></td></tr>
<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_s_p_h_1_1solid__dynamics_1_1_constrain_solid_body_region.html">SPH::solid_dynamics::ConstrainSolidBodyRegion</a></td></tr>
<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Constrain a solid body part with prescribed motion. Note the average values for FSI are prescirbed also.  <a href="class_s_p_h_1_1solid__dynamics_1_1_constrain_solid_body_region.html#details">More...</a><br /></td></tr>
<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_s_p_h_1_1solid__dynamics_1_1_constrain_solid_body_region_sinusoidal_motion.html">SPH::solid_dynamics::ConstrainSolidBodyRegionSinusoidalMotion</a></td></tr>
<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Constrain a solid body part with prescribed motion. Note the average values for FSI are prescirbed also.  <a href="class_s_p_h_1_1solid__dynamics_1_1_constrain_solid_body_region_sinusoidal_motion.html#details">More...</a><br /></td></tr>
<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_s_p_h_1_1solid__dynamics_1_1constrain_norm_dirichlet_boundary.html">SPH::solid_dynamics::constrainNormDirichletBoundary</a></td></tr>
<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_s_p_h_1_1solid__dynamics_1_1_impose_external_force.html">SPH::solid_dynamics::ImposeExternalForce</a></td></tr>
<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">impose external force on a solid body part by add extra acceleration  <a href="class_s_p_h_1_1solid__dynamics_1_1_impose_external_force.html#details">More...</a><br /></td></tr>
<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_s_p_h_1_1solid__dynamics_1_1_constrain_solid_body_part_by_sim_body.html">SPH::solid_dynamics::ConstrainSolidBodyPartBySimBody</a></td></tr>
<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Constrain a solid body part from the motion computed from Simbody.  <a href="class_s_p_h_1_1solid__dynamics_1_1_constrain_solid_body_part_by_sim_body.html#details">More...</a><br /></td></tr>
<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_s_p_h_1_1solid__dynamics_1_1_constrain_normal_directionfor_soild_body_part_by_sim_body.html">SPH::solid_dynamics::ConstrainNormalDirectionforSoildBodyPartBySimBody</a></td></tr>
<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Constrain normal directin for a solid body part from the motion computed from Simbody.  <a href="class_s_p_h_1_1solid__dynamics_1_1_constrain_normal_directionfor_soild_body_part_by_sim_body.html#details">More...</a><br /></td></tr>
<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_s_p_h_1_1solid__dynamics_1_1_force_on_solid_body_part_for_sim_body.html">SPH::solid_dynamics::ForceOnSolidBodyPartForSimBody</a></td></tr>
<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Compute the force acting on the solid body part for applying to simbody forces latter.  <a href="class_s_p_h_1_1solid__dynamics_1_1_force_on_solid_body_part_for_sim_body.html#details">More...</a><br /></td></tr>
<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_s_p_h_1_1solid__dynamics_1_1_force_on_elastic_body_part_for_sim_body.html">SPH::solid_dynamics::ForceOnElasticBodyPartForSimBody</a></td></tr>
<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Compute the force acting on the elastic solid body part for applying to simbody forces latter.  <a href="class_s_p_h_1_1solid__dynamics_1_1_force_on_elastic_body_part_for_sim_body.html#details">More...</a><br /></td></tr>
<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_s_p_h_1_1solid__dynamics_1_1_damping_by_splitting_algorithm.html">SPH::solid_dynamics::DampingBySplittingAlgorithm</a></td></tr>
<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Velocity damping by splitting scheme this method modify the total acceleration and velocity directly.  <a href="class_s_p_h_1_1solid__dynamics_1_1_damping_by_splitting_algorithm.html#details">More...</a><br /></td></tr>
<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_s_p_h_1_1solid__dynamics_1_1_damping_by_splitting_pairwise.html">SPH::solid_dynamics::DampingBySplittingPairwise</a></td></tr>
<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_s_p_h_1_1solid__dynamics_1_1_damping_by_splitting_with_random_choice.html">SPH::solid_dynamics::DampingBySplittingWithRandomChoice</a></td></tr>
<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Velocity damping by splitting scheme this method modify the total acceleration and velocity directly.  <a href="class_s_p_h_1_1solid__dynamics_1_1_damping_by_splitting_with_random_choice.html#details">More...</a><br /></td></tr>
<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table><table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="namespaces"></a>
Namespaces</h2></td></tr>
<tr class="memitem:namespace_s_p_h"><td class="memItemLeft" align="right" valign="top"> &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespace_s_p_h.html">SPH</a></td></tr>
<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table><table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="typedef-members"></a>
Typedefs</h2></td></tr>
<tr class="memitem:a784984b76b4901c596f94833ac285c0c"><td class="memItemLeft" align="right" valign="top"><a id="a784984b76b4901c596f94833ac285c0c"></a>
typedef ParticleDynamicsSimple&lt; SolidBody, SolidParticles, Solid &gt;&#160;</td><td class="memItemRight" valign="bottom"><b>SPH::solid_dynamics::SolidDynamicsSimple</b></td></tr>
<tr class="separator:a784984b76b4901c596f94833ac285c0c"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a76094e9a0f810c129311ea54502fbd6a"><td class="memTemplParams" colspan="2"><a id="a76094e9a0f810c129311ea54502fbd6a"></a>
template&lt;class ReturnType &gt; </td></tr>
<tr class="memitem:a76094e9a0f810c129311ea54502fbd6a"><td class="memTemplItemLeft" align="right" valign="top">using&#160;</td><td class="memTemplItemRight" valign="bottom"><b>SPH::solid_dynamics::SolidDynamicsSum</b> = ParticleDynamicsReduce&lt; ReturnType, ReduceSum&lt; ReturnType &gt;, SolidBody, SolidParticles &gt;</td></tr>
<tr class="separator:a76094e9a0f810c129311ea54502fbd6a"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a26c0ddd7eff233e966a95e99145c42c2"><td class="memTemplParams" colspan="2"><a id="a26c0ddd7eff233e966a95e99145c42c2"></a>
template&lt;class ReturnType &gt; </td></tr>
<tr class="memitem:a26c0ddd7eff233e966a95e99145c42c2"><td class="memTemplItemLeft" align="right" valign="top">using&#160;</td><td class="memTemplItemRight" valign="bottom"><b>SPH::solid_dynamics::SolidDynamicsConstraintForSimbodySum</b> = PartDynamicsByParticleReduce&lt; ReturnType, ReduceSum&lt; ReturnType &gt;, SolidBody, SolidParticles, SolidBodyPartForSimbody &gt;</td></tr>
<tr class="separator:a26c0ddd7eff233e966a95e99145c42c2"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a12bf689f02568215af4884ac4536f9c5"><td class="memTemplParams" colspan="2"><a id="a12bf689f02568215af4884ac4536f9c5"></a>
template&lt;class ReturnType &gt; </td></tr>
<tr class="memitem:a12bf689f02568215af4884ac4536f9c5"><td class="memTemplItemLeft" align="right" valign="top">using&#160;</td><td class="memTemplItemRight" valign="bottom"><b>SPH::solid_dynamics::ElasticSolidDynamicsConstraintForSimbodySum</b> = PartDynamicsByParticleReduce&lt; ReturnType, ReduceSum&lt; ReturnType &gt;, SolidBody, ElasticSolidParticles, SolidBodyPartForSimbody &gt;</td></tr>
<tr class="separator:a12bf689f02568215af4884ac4536f9c5"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a132be5474edc574f75dc7e0ecdcf0961"><td class="memItemLeft" align="right" valign="top"><a id="a132be5474edc574f75dc7e0ecdcf0961"></a>
typedef ParticleDynamicsInner&lt; SolidBody, SolidParticles, Solid &gt;&#160;</td><td class="memItemRight" valign="bottom"><b>SPH::solid_dynamics::SolidDynamicsInner</b></td></tr>
<tr class="separator:a132be5474edc574f75dc7e0ecdcf0961"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a8753767ddc28aac2ee8d09310c47e89c"><td class="memItemLeft" align="right" valign="top"><a id="a8753767ddc28aac2ee8d09310c47e89c"></a>
typedef ParticleDynamicsComplex&lt; SolidBody, SolidParticles, Solid, SolidBody, SolidParticles &gt;&#160;</td><td class="memItemRight" valign="bottom"><b>SPH::solid_dynamics::SolidDynamicsComplex</b></td></tr>
<tr class="separator:a8753767ddc28aac2ee8d09310c47e89c"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aa972c521eab85a6c7ce619b6da3bee57"><td class="memItemLeft" align="right" valign="top"><a id="aa972c521eab85a6c7ce619b6da3bee57"></a>
typedef ParticleDynamicsComplexWithUpdate&lt; SolidBody, SolidParticles, Solid, SolidBody, SolidParticles &gt;&#160;</td><td class="memItemRight" valign="bottom"><b>SPH::solid_dynamics::SolidDynamicsComplexWithUpdate</b></td></tr>
<tr class="separator:aa972c521eab85a6c7ce619b6da3bee57"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a42a8fdaf57ceee77d95ca5b8a6a1b592"><td class="memItemLeft" align="right" valign="top"><a id="a42a8fdaf57ceee77d95ca5b8a6a1b592"></a>
typedef ParticleDynamicsContact&lt; SolidBody, SolidParticles, Solid, FluidBody, FluidParticles, WeaklyCompressibleFluid &gt;&#160;</td><td class="memItemRight" valign="bottom"><b>SPH::solid_dynamics::FSIDynamics</b></td></tr>
<tr class="separator:a42a8fdaf57ceee77d95ca5b8a6a1b592"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ae661a8f35e5f22be2dddb66e75df1616"><td class="memItemLeft" align="right" valign="top"><a id="ae661a8f35e5f22be2dddb66e75df1616"></a>
typedef ParticleDynamicsSimple&lt; SolidBody, ElasticSolidParticles, ElasticSolid &gt;&#160;</td><td class="memItemRight" valign="bottom"><b>SPH::solid_dynamics::ElasticSolidDynamicsSimple</b></td></tr>
<tr class="separator:ae661a8f35e5f22be2dddb66e75df1616"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a070a6f861227998971af6be3fb69e996"><td class="memItemLeft" align="right" valign="top"><a id="a070a6f861227998971af6be3fb69e996"></a>
typedef ParticleDynamicsReduce&lt; <a class="el" href="class_real.html">Real</a>, ReduceMin, SolidBody, ElasticSolidParticles, ElasticSolid &gt;&#160;</td><td class="memItemRight" valign="bottom"><b>SPH::solid_dynamics::ElasticSolidDynamicsMinimum</b></td></tr>
<tr class="separator:a070a6f861227998971af6be3fb69e996"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a09d6c6dd386ddf627cdec3f50e664f53"><td class="memItemLeft" align="right" valign="top"><a id="a09d6c6dd386ddf627cdec3f50e664f53"></a>
typedef ParticleDynamicsInner1Level&lt; SolidBody, ElasticSolidParticles, ElasticSolid &gt;&#160;</td><td class="memItemRight" valign="bottom"><b>SPH::solid_dynamics::ElasticSolidDynamicsInner1Level</b></td></tr>
<tr class="separator:a09d6c6dd386ddf627cdec3f50e664f53"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ace650e00cd25f34e3eeeb80a8f0dfb78"><td class="memItemLeft" align="right" valign="top"><a id="ace650e00cd25f34e3eeeb80a8f0dfb78"></a>
typedef ParticleDynamicsInnerSplitting&lt; SolidBody, ElasticSolidParticles, ElasticSolid &gt;&#160;</td><td class="memItemRight" valign="bottom"><b>SPH::solid_dynamics::ElasticSolidDynamicsInnerSplitting</b></td></tr>
<tr class="separator:ace650e00cd25f34e3eeeb80a8f0dfb78"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a1768acd12adbac6d167655f778bb881e"><td class="memItemLeft" align="right" valign="top"><a id="a1768acd12adbac6d167655f778bb881e"></a>
typedef ParticleDynamicsComplex&lt; SolidBody, ElasticSolidParticles, ElasticSolid, SolidBody, SolidParticles &gt;&#160;</td><td class="memItemRight" valign="bottom"><b>SPH::solid_dynamics::ElasticSolidDynamicsComplex</b></td></tr>
<tr class="separator:a1768acd12adbac6d167655f778bb881e"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a4234e5c73032eff15409358b92216d59"><td class="memItemLeft" align="right" valign="top"><a id="a4234e5c73032eff15409358b92216d59"></a>
typedef ParticleDynamicsInner&lt; SolidBody, ElasticSolidParticles, ElasticSolid &gt;&#160;</td><td class="memItemRight" valign="bottom"><b>SPH::solid_dynamics::ElasticSolidDynamicsInner</b></td></tr>
<tr class="separator:a4234e5c73032eff15409358b92216d59"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aa4829124929fcc76177ceea9ab52c507"><td class="memItemLeft" align="right" valign="top"><a id="aa4829124929fcc76177ceea9ab52c507"></a>
typedef ParticleDynamicsComplexWithUpdate&lt; SolidBody, ElasticSolidParticles, ElasticSolid, SolidBody, SolidParticles &gt;&#160;</td><td class="memItemRight" valign="bottom"><b>SPH::solid_dynamics::ElasticSolidDynamicsComplexWithUpdate</b></td></tr>
<tr class="separator:aa4829124929fcc76177ceea9ab52c507"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table>
<a name="details" id="details"></a><h2 class="groupheader">Detailed Description</h2>
<div class="textblock"><p>Here, we define the algorithm classes for solid dynamics. </p>
<p>We consider here a weakly compressible solids. <br />
</p><dl class="section author"><dt>Author</dt><dd>Luhui Han, Chi ZHang and Xiangyu Hu </dd></dl>
<dl class="section version"><dt>Version</dt><dd>0.1 </dd></dl>
</div></div><!-- contents -->
<!-- start footer part -->
<hr class="footer"/><address class="footer"><small>
Generated by &#160;<a href="http://www.doxygen.org/index.html">
<img class="footer" src="doxygen.png" alt="doxygen"/>
</a> 1.8.14
</small></address>
</body>
</html>
